Merge remote-tracking branch 'upstream/master' into abo_fw_alt_vel_control
[inav.git] / docs / ESC and servo outputs.md
blobeba8187ca560adace41f28b16c68b6ec7583c957
1 # ESC and servo outputs
3 ## ESC protocols
5 INAV support the following ESC protocols:
7 * "standard" PWM with 50-400Hz update rate
8 * OneShot125
9 * OneShot42
10 * Multishot
11 * Brushed motors
12 * DSHOT150, DSHOT300, DSHOT600
14 ESC protocol can be selected in Configurator. No special configuration is required.
16 Check the ESC documentation for the list of protocols that are supported.
18 ## Servo outputs
20 By default, INAV uses 50Hz servo update rate. If you want to increase it, make sure that servos support
21 higher update rates. Only high end digital servos are capable of handling 200Hz and above!
23 ## Servo output mapping
25 Not all outputs on a flight controller can be used for servo outputs. It is a hardware thing. Always check flight controller documentation. 
27 While motors are usually ordered sequentially, here is no standard output layout for servos! Some boards might not be supporting servos in _Multirotor_ configuration at all!
29 ## Modifying output mapping
31 INAV 7 introduced extra functionality that let you force only some outputs to be either *MOTORS* or *SERVOS*, with some restrictions dictated by the hardware.
33 The main restrictions is that outputs are associated with timers, which can be shared between multiple outputs and  two outputs on the same timer need to have the same function.
35 The easiest way to modify outputs, is to use the Mixer tab in the Configurator, as it will clearly show you which timer is used by all outputs, but you can also use `timer_output_mode` on the cli.